import logging  #导包
import time
from config import DIR_PATH
import os
from common.configManager import local_config

logname = os.path.join(DIR_PATH,local_config.log_path(),time.strftime("%Y%m%d%H%M") + "log.log")
class LoggerManager:
    #----------------------创建日志器----------------------
    logger = logging.getLogger()
    logger.setLevel(logging.INFO)
    #设置日志器的级别，比如info：表示输出info及以上级别的信息

    #----------------------创建控制台日志处理器----------------------
    # 创建控制台日志处理器
    cons_handler = logging.StreamHandler()
    #设置控制台处理器，日志的输出等级（可以不设置，默认使用日志器的日志输出级别）
    cons_handler.setLevel(logging.INFO)

    #设置输出格式
    format = "%(levelname)s:%(filename)s--->%(message)s---->%(asctime)s"
    formater = logging.Formatter(format) #创建一个输出格式
    '''
     format参数说明：
            %(levelname)s: 打印日志级别名称
            %(filename)s: 打印当前执行程序名
            %(lineno)d: 打印日志的当前行号
            %(asctime)s: 打印日志的时间
            %(message)s: 打印日志信息
    '''
    # 应用日志输出格式
    cons_handler.setFormatter(formater) # 控制台日志处理器的日志格式设置


    #----------------------创建文件日志处理器----------------------
    #创建文件日志处理器
    file_handler = logging.FileHandler(filename=logname,mode='a',encoding="utf-8")
    #设置文件处理器的输出等级
    file_handler.setLevel(logging.INFO)
    #设置输出格式
    format = "%(levelname)s:%(filename)s--->%(message)s---->%(asctime)s"
    formater = logging.Formatter(format) #创建一个输出格式
    file_handler.setFormatter(formater) #文件输出格式设置

    #---------------将处理器添加到日志器中--------------------------
    logger.addHandler(cons_handler) #将控制台处理器添加到日志器
    logger.addHandler(file_handler) #将控制台处理器添加到日志器

loggerM = LoggerManager().logger  #使用LoggerManager，获取一个日志器










